    var myAtoi = function (s) {
        let i = 0;
        let num = '';
        // 处理正还是负数
        let negativeSymbol = 1
        // 去除收尾空格
        s = s.trim()
        while (s[i]) {
            const k = s[i]
            // 转义后是数字 
            if (k >= 0 && k <= 9 && k != ' ') {
                console.log('是数字', k)
                num += k
                // 验证可执行范围内
                if (num * negativeSymbol <= -2147483648) return -2147483648;
                else if (num * negativeSymbol >= 2147483647) return 2147483647;
            } else {
                console.log('不是数字 ==>  ', k, i)
                // 是减号或者加号  并且 num是空的
                if (i == 0 && k == '-') {
                    // 判断结果是正数还是负数
                    negativeSymbol = -1
                } else if (i == 0 && k == '+') {
                    // 是整数 但是不需要任何操作
                } else {
                    // 啥也不是 avc .
                    break
                }
            }
            i++
        }

        return num * negativeSymbol
    };

    // console.log('myAtoi===>', myAtoi("   -42"))
    // console.log('myAtoi===>', myAtoi("a-   42"))
    // console.log('myAtoi===>', myAtoi("4193 with words"))
    console.log('myAtoi===>', myAtoi("+-12"))
    // console.log('myAtoi===>', myAtoi("+"))
    // console.log('myAtoi===>', myAtoi("21474836460"))
    // console.log('myAtoi===>', myAtoi("   +0 123"))
    // console.log('myAtoi===>', myAtoi("-5-"))
    console.log('myAtoi===>', myAtoi(".1"))